package com.hidt.shop.service.impl;

import com.hidt.shop.domain.Payment;
import com.hidt.shop.mapper.PaymentMapper;
import com.hidt.shop.service.PaymentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @author Fhy
 * @Title PaymentServiceImpl
 * @Package com.hdit.shop.service.impl
 * @Description 支付详情表的业务处理实现类
 * @date 2021/1/20 16:39
 */
@Service
public class PaymentServiceImpl implements PaymentService {
    @Autowired
    private PaymentMapper paymentMapper;

    /**
     * 方法描述: 添加支付方式
     * @author Fhy
     * @Date 2021/1/20 16:46
     * @params [payment]
     * @return java.lang.String
     */
    @Override
    public String addPayment(Payment payment) {
//        调用mapper接口 添加新的支付详情
        int i = paymentMapper.addPayment(payment);
//        返回数据持久结果
        return judgment(i, "添加");
    }

    /**
     * 方法描述: 删除支付方式
     * @author Fhy
     * @Date 2021/1/20 16:47
     * @params [payment_id]
     * @return java.lang.String
     */
    @Override
    public String deletePayment(int payment_id) {
//        调用mapper接口实现支付详情 逻辑删除
        int i = paymentMapper.deletePayment(payment_id);
//        返回数据持久结果
        return judgment(i, "删除");
    }

    /**
     * 方法描述: 修改支付方式
     * @author Fhy
     * @Date 2021/1/20 16:48
     * @params [payment_id, payment_way]
     * @return java.lang.String
     */
    @Override
    public String updatePayment(int payment_id, String payment_way) {
//        调用mapper接口实现支付详情修改
        int i = paymentMapper.updatePayment(payment_id,payment_way);
//        返回数据持久结果
        return judgment(i, "修改");
    }

    /**
     * 方法描述: 查找所有支付方式
     * @author Fhy
     * @Date 2021/1/20 16:48
     * @params []
     * @return java.util.List<com.hidt.shop.domain.Payment>
     */
    @Override
    public List<Payment> findAllPayment() {
//        调用mapper接口 查找所有支付详情
        List<Payment> paymentList = paymentMapper.findAllPayment();
//        返回数据持久结果
        return paymentList;
    }

    /**
     * 方法描述: 通过id查找对应支付方式
     * @author Fhy
     * @Date 2021/1/20 17:23
     * @params [payment_id]
     * @return com.hidt.shop.domain.Payment
     */
    @Override
    public Payment findOnePaymentById(int payment_id) {
        Payment payment = paymentMapper.findOnePaymentById(payment_id);
        return payment;
    }

    /**
     * 方法描述: 简单的返回字符串判断
     * @author Fhy
     * @Date 2021/1/20 16:40
     * @params [i, str]
     * @return java.lang.String
     */
    private String judgment(int i, String str) {
        if (i == 1) {
            return str + "成功";
        } else {
            return str + "失败";
        }
    }
}
